package main

import (
	"fmt"
	"math"
)

func main() {
	for i := 1; i <= 5; i++ {
		fmt.Println(judgeSquareSum(i))
	}
}

//brute force
/**
 * @Description: 给定一个非负整数 c ，你要判断是否存在两个整数 a 和 b，使得 a2 + b2 = c 。
 */
func judgeSquareSum(c int) bool {
	max := math.Sqrt(float64(c))
	tempMap := make(map[int]bool)
	for i := 0; i <= int(max); i++ {
		tempMap[i*i] = true
	}

	for index, _ := range tempMap {
		if _, ok := tempMap[c-index]; ok {
			return true
		}
	}
	return false
}
